package io;

import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.nio.charset.StandardCharsets;
/**
 * 字符流: java.io.Reader和java.io.Writer
 * 上述两个流是抽象类，是所有字符流的超类，定义了所有字符流都具备的读写字符的操作
 * 字符流都是高级流
 * 转换流: InputStreamReader和OutputStreamWriter
 * 转换流是一对常用的字符流的实现类，实际开发中我们不会直接操作转换流，但在流连接中他们非常重要
 * 本案例演示转换流OutputStreamWriter的写出操作----介绍为主
 */
public class OswDemo {
    public static void main(String[] args) throws IOException {
        FileOutputStream fos = new FileOutputStream("osw.txt");
        //转换流在创建时可以明确字符集，通过它写出的文字都会使用该字符集来转换为字节
        OutputStreamWriter osw = new OutputStreamWriter(fos, StandardCharsets.UTF_8);
        osw.write("你好，世界！");
        osw.write("早上好！");
        System.out.println("写出完毕！");
        osw.close();
    }
}
